import {createRouterAndMenuList, permissionMenus} from "../api/star_horse";


const actions = {
    /**
     * 缓存Tab数据
     * @param commit
     * @param data
     */
    commitNavBar({commit}, data) {
        commit("setNavData", data);
        commit("setViewCache", data);
    },
    /**
     * 清除Tab数据
     * @param commit
     * @param data
     */
    clearNavBar({commit}, data) {
        commit("clearNavItem", data);
    },
    /**
     * 清除缓存
     * @param commit
     * @param data
     */
    clearCache({commit}, data) {
        commit("clearCache", data);
    },
    /**
     * 清楚所有缓存
     * @param commit
     */
    removeAll({commit}) {
        commit("removeAll");
    },
    // /**
    //  * 用户登录
    //  * @param commit
    //  * @param data
    //  */
    // loginAction({commit}, data) {
    //     let that = this;
    //     login(data).then(res => {
    //         let redata = res.data;
    //         let userData = redata.data;
    //         if (redata.code === 1) {
    //             warning(redata.cnMessage);
    //         } else {
    //             let condition = {
    //                 "userId": userData.idUsersinfo,
    //             };
    //             let redata = permissionMenus(condition, -1);
    //             commit("loginMutation", userData);
    //             commit("permissionMenusMutation", redata);
    //             setToken(userData.dataNo, data.rememberMe);
    //             userData.rolesList = [];
    //             setUserInfo(userData);
    //             resolve();
    //         }
    //
    //     }).catch(error => {
    //         console.log("登录异常")
    //         warning(error);
    //     });
    // },
    permissionOperation({commit}, data) {
        let condition = {
            "userId": data.idUsersinfo,
        };
        return new Promise((resolve, reject) => {
            permissionMenus(condition, -1).then(res => {
                commit("permissionMenusMutation", createRouterAndMenuList(res.data.data));
                resolve();
            });
        });

    },
    getMenus({rootGetters}) {
        return new Promise((resolve, reject) => {
            resolve(rootGetters.getPermissionMenus);
        })
    },
    // /**
    //  * 退出登录
    //  * @param commit
    //  * @param data
    //  */
    // logOut({commit}, data) {
    //     return new Promise((resolve, reject) => {
    //         logout(data).then(res => {
    //             let redata = res.data;
    //             if (redata.code === 1) {
    //                 reject(redata.cnMessage);
    //             } else {
    //                 removeToken()
    //                 commit("logoutMutation", data);
    //                 resolve();
    //             }
    //         }).catch(error => reject(error));
    //     });
    // },
    /**
     * 切换Tab
     * @param commit
     * @param data
     */
    changeTab({commit}, data) {
        commit("changeTabMutation", data);
    }
}
export default actions;